#include <stdlib.h>

#define MaxSize 10
typedef int ElementType;
typedef struct SeqStack{
    ElementType data[MaxSize]; //静态数组存放栈元素
    int top; // 栈顶指针
}SeqStack;

// 初始化顺序栈
void initSeqStack(SeqStack &S){
    S.top = -1; // 让栈顶元素指向-1
}
// 判断栈是否为空
bool isEmpty(SeqStack S){
    if(S.top == -1){
        return true;
    }
    return false;
}
// 入栈操作
bool push(SeqStack &S,ElementType elem){
    if(S.top == MaxSize - 1) return false; // 栈已满，不可入栈
    S.data[++S.top] = elem;
    return true;
}

//出栈操作：将栈顶元素删除，并返回删除的栈顶元素
bool pop(SeqStack &S,ElementType &elem){
    if(S.top == -1) return false;// 栈为空，不可出栈
    elem = S.data[S.top--];
    return true;
}
// 读取栈顶元素的操作
bool getElem(SeqStack S, ElementType &elem) {
    if (S.top == -1) return false; //栈为空
    elem = S.data[S.top];
    return true;
}
int main() {

    return 0;
}
